Questions marquées «c++»

C ++ est un langage de programmation à usage général. Il a été initialement conçu comme une extension de C et a une syntaxe similaire, mais c'est maintenant un langage complètement différent. Utilisez cette balise pour les questions sur le code (à compiler) avec un compilateur C ++. Utilisez une balise spécifique à la version pour les questions liées à une révision standard spécifique [C ++ 11], [C ++ 14], [C ++ 17] ou [C ++ 20], etc.




1
Clang a-t-il raison de rejeter le code dans lequel la classe imbriquée d'un modèle de classe est définie uniquement via des spécialisations?
Étant donné le modèle de classe suivant: template<typename T> struct Outer { struct Inner; auto f(Inner) -> void; }; nous définissons Innerséparément pour chaque spécialisation Outer: template<> struct Outer<int>::Inner {}; template<> struct Outer<double>::Inner {}; puis définissez la fonction membre fune fois pour toutes les spécialisations de Outer: auto Outer<T>::f(Inner) -> …

2
Est-ce un ancien constructeur de style C ++?
Voici un morceau de code C ++. Dans cet exemple, de nombreux blocs de code ressemblent à des appels de constructeur. Malheureusement, le code de blocage # 3 ne l'est pas (vous pouvez le vérifier en utilisant https://godbolt.org/z/q3rsxn et https://cppinsights.io ). Je pense que c'est une ancienne notation C ++ …
17 c++  c++11 


3
Existe-t-il un moyen d'installer Valgrind sur Catalina?
Existe-t-il un moyen d'installer Valgrind sur Catalina et de le faire fonctionner correctement? Si oui, j'apprécierais beaucoup un processus étape par étape. J'ai essayé d'installer Valgrind avec https://github.com/sowson/valgrind mais quand j'ai testé helloWorld.cppsur le terminal, la console a renvoyé des erreurs que je n'aurais pas dû obtenir. Je ne sais …

2
Modèles de surcharge ambigus
J'ai le code modèle suivant #include <vector> #include <array> #include <iostream> template<typename T1> void foo(std::vector<T1> bar) { std::cout << "GENERIC" << std::endl; } template<typename T1> void foo(std::vector<std::vector<T1>> bar) { std::cout << "SPECIFIC (vector)" << std::endl; } template<typename T1, int SIZE> void foo(std::vector<std::array<T1, SIZE>> bar) { std::cout << "SPECIFIC (array)" << …
16 c++  templates 

3
Optimiser la fonction objectif R avec Rcpp plus lentement, pourquoi?
Je travaille actuellement sur une méthode bayésienne qui nécessite plusieurs étapes d'optimisation d'un modèle logit multinomial par itération. J'utilise optim () pour effectuer ces optimisations, et une fonction objective écrite en R. Un profilage a révélé qu'optim () est le principal goulot d'étranglement. Après avoir fouillé, j'ai trouvé cette question …
16 c++  r  optimization  rcpp 


1
std :: pair <auto, auto> type de retour
Je jouais avec autoen std::pair. Dans le code ci-dessous, la fonction fest censée retourner un std::pairtype qui dépend d'un paramètre de modèle. Un exemple pratique: EXEMPLE 1 template &lt;unsigned S&gt; auto f() { if constexpr (S == 1) return std::pair{1, 2}; // pair of ints else if constexpr (S == …



3
Modèles variadiques: dépliez les arguments en groupes
J'ai une fonction qui prend deux arguments: template &lt;typename T1, typename T2&gt; void foo(T1 arg1, T2 arg2) { std::cout &lt;&lt; arg1 &lt;&lt; " + " &lt;&lt; arg2 &lt;&lt; '\n'; } Et un variadic qui devrait transmettre ses arguments par paires: template &lt;typename... Args&gt; void bar(Args&amp;&amp;... args) { static_assert(sizeof...(Args) % 2 …


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.