Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
accessibility on in-class typedefs
Language:
Ada
Assembly
Bash
C#
C++ (gcc)
C++ (clang)
C++ (vc++)
C (gcc)
C (clang)
C (vc)
Client Side
Clojure
Common Lisp
D
Elixir
Erlang
F#
Fortran
Go
Haskell
Java
Javascript
Kotlin
Lua
MySql
Node.js
Ocaml
Octave
Objective-C
Oracle
Pascal
Perl
Php
PostgreSQL
Prolog
Python
Python 3
R
Rust
Ruby
Scala
Scheme
Sql Server
Swift
Tcl
Visual Basic
Layout:
Vertical
Horizontal
//g++ 4.9.3 #include <iostream> template<typename T> class QScopedPointer { //type alias does not need to be made public in order to use them in //public member functions as shown below. //you can use both syntax //typedef T* QScopedPointer::* RestrictedBool; using RestrictedBool = T* QScopedPointer::*; public: QScopedPointer(T* _d):d(_d){} inline operator RestrictedBool() const { return d==nullptr? nullptr : &QScopedPointer::d; } private: T* d; }; int main() { int a = 1; QScopedPointer<int> q1(&a); if(q1) std::cout<<"q1 has a pointer" << std::endl; else std::cout <<"q1 not has a pointer" << std::endl; return 0; }
cl.exe
Show compiler warnings
[
+
] Compiler args
[
+
]
Show input
Compilation time: 1,57 sec, absolute running time: 0,44 sec, absolute service time: 2,02 sec
fork mode
|
history
|
discussion
q1 has a pointer