История изменений
Исправление MOPKOBKA, (текущая версия) :
Трейты это абстрактный класс, тайпкласс это концепт, в чем разница? Что по твоему нельзя выразить через С++? В моем треде о рекурсии я уже писал как раз что трейт это класс с девиртуализацией, а dyn trait это просто класс.
Многие считают что модули из OCaml лучше чем средства Haskell, ну а они через классы выражаются на C++, не в духе ООП, а через то, что класс в C++ может определять свои типы внутри итд.
module Data = struct
type t = int
type t2 = float
let add t t2 = ...
end
class Data {
using t = int;
using t2 = float;
auto add(...) ...
};
Исправление MOPKOBKA, :
Трейты это абстрактный класс, тайпкласс это концепт, в чем разница? Что по твоему нельзя выразить через С++? В моем треде о рекурсии я уже писал как раз что трейт это класс с девиртуализацией, а dyn trait это просто класс.
Многие считают что модули из OCaml намного круче, ну а они через классы выражаются на C++, не в духе ООП, а через то, что класс в C++ может определять свои типы внутри итд.
module Data = struct
type t = int
type t2 = float
let add t t2 = ...
end
class Data {
using t = int;
using t2 = float;
auto add(...) ...
};
Исправление MOPKOBKA, :
Трейты это абстрактный класс, тайпкласс это концепт, в чем разница? Что по твоему нельзя выразить через С++? В моем треде о рекурсии я уже писал как раз что трейт это класс с девиртуализацией, а dyn trait это просто класс.
Многие считают что модули из OCaml намного круче, ну а они через классы выражаются на C++, не в духе ООП, а через то, что класс в C++ может определять свои типы внутри итд.
Исходная версия MOPKOBKA, :
Трейты это абстрактный класс, тайпкласс это концепт, в чем разница? Многие считают что модули из OCaml намного круче, ну а они через классы выражаются на C++, не в духе ООП, а через то, что класс в C++ может определять свои типы внутри итд.