Domande taggate «c++17»

C ++ 17 è il nome dello standard C ++ approvato nel 2017. Si basa sul precedente standard C ++ 14, migliorando il linguaggio principale e la libreria standard e aggiungendo alcune nuove funzionalità linguistiche.

1
Problema in GCC / C ++ 17 con classe modello di modello
Considera i 2 sovraccarichi seguenti template<typename T> bool test() { return true; } template<template<typename ...> class T> bool test() { return false; } Il primo funziona per le classi regolari, mentre il secondo per i modelli non istanziati. Per esempio: std::cout<<test<int>()<<std::endl; <-- this yields 1 std::cout<<test<std::list>()<<std::endl; <--this yields 0 Ora …
10 c++  templates  gcc  clang  c++17 




2
Come eludere la copia durante il concatenamento?
Sto creando una classe di tipo concatenamento, come il piccolo esempio di seguito. Sembra che quando si concatenano funzioni membro, viene invocato il costruttore di copie. C'è un modo per sbarazzarsi della chiamata del costruttore della copia? Nel mio esempio di giocattolo qui sotto, è ovvio che ho a che …
10 c++  c++14  c++17 


2
Sintassi valida della chiamata dello pseudo-distruttore per una costante mobile
Considera il seguente programma dimostrativo. #include <iostream> int main() { typedef float T; 0.f.T::~T(); } Questo programma è compilato da Microsoft Visual Studio Community 2019. Ma clanged gccemettere un errore come questo prog.cc:7:5: error: unable to find numeric literal operator 'operator""f.T' 7 | 0.f.T::~T(); | ^~~~~ Se scrivere l'espressione come …


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.